#ifndef TRAFFICLIGHT_H
#define TRAFFICLIGHT_H

#include <QString>
#include <map>


using namespace std;

class TrafficLight
{
public:
    TrafficLight()
    {
    }

    TrafficLight(const TrafficLight &traffcLightInstance)
    {
        this->m_iRowCount = traffcLightInstance.m_iRowCount;
        this->m_qstrCId = traffcLightInstance.m_qstrCId;
        this->m_qstrTId = traffcLightInstance.m_qstrTId;
        this->m_MapColor = traffcLightInstance.m_MapColor;
    }

    TrafficLight &operator= (const TrafficLight &traffcLightInstance)
    {
        this->m_iRowCount = traffcLightInstance.m_iRowCount;
        this->m_qstrCId = traffcLightInstance.m_qstrCId;
        this->m_qstrTId = traffcLightInstance.m_qstrTId;
        this->m_MapColor = traffcLightInstance.m_MapColor;

        return *this;
    }

    virtual ~TrafficLight()
    {
    }

    void setCid(QString id)
    {
        m_qstrCId = id;
    }

    QString getCid()
    {
        return m_qstrCId;
    }

    void setTid(QString id)
    {
        m_qstrTId = id;
    }

    QString getTid()
    {
        return m_qstrTId;
    }

    void setCount(int count)
    {
        m_iRowCount = count;
    }

    int getCount()
    {
        return m_iRowCount;
    }

    void setWid(map<int, vector<QString> > mapColor)
    {
        m_MapColor = mapColor;
    }

    map<int, vector<QString> > getWid()
    {
        return m_MapColor;
    }

private:
    int m_iRowCount;
    QString m_qstrCId;
    QString m_qstrTId;
    map<int, vector<QString> > m_MapColor;
};

#endif // TRAFFICLIGHT_H
